package com.hbnrtech.sip.dao.model;

import lombok.Builder;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * 存储已注册的 GB/T 28181 设备信息
 */
@Data
@Builder
public class SipDevice {
    /**
     * 设备国标ID (20位)
     */
    private String deviceId;

    private String name;

    private String manufacturer;

    private String model;

    private String firmware;

    /**
     * 设备注册时上报的 IP 地址
     */
    private Object ipAddress;

    /**
     * 设备注册时上报的 SIP 端口
     */
    private Integer port;

    /**
     * 设备注册时使用的传输协议 (UDP/TCP)
     */
    private String transport;

    private String password;

    private String realm;

    /**
     * 当前注册有效期截止时间
     */
    private LocalDateTime expiresAt;

    private LocalDateTime registeredAt;

    /**
     * 最后接收到设备心跳的时间
     */
    private LocalDateTime lastHeartbeatAt;

    /**
     * 平台判断的设备在线状态
     */
    private Boolean isOnline;

    private String charset;

    private String streamMode;

    private LocalDateTime createdAt;

    private LocalDateTime updatedAt;
}